package classes;

import java.awt.Point;

import interfaces.ICapteur;
import interfaces.IStrategy;

public class StrategySequentiel implements IStrategy{
	private ICapteur capteur;
	private Point value;
	private Point tempValue;
	private int nbCanaux;
	private int nbGetValue;

	public StrategySequentiel(ICapteur capteur){
		this.capteur=capteur;
		capteur.setStrategyText("Strategie: Sequentielle");
		value=new Point(0, 0);
		tempValue=(Point) value.clone();
	}

	@Override
	public synchronized void traiterTick() {
		value.x++;
		capteur.setLabelText(value.x+"");
		if(nbCanaux==nbGetValue){
			tempValue=(Point) value.clone();
			nbCanaux=capteur.getNbCanaux();
			nbGetValue=0;
			capteur.updateCanaux();
		}

	}

	@Override
	public Point getValue() {
		nbGetValue++;
		return tempValue;
	}

}
